NAME

laurel(8) – transform, enrich Linux audit logs

SYNOPSIS

laurel is an auditd(8) plug-in that parses Linux audit events, enriches them with local information, and transforms them into a JSONlines-based output format intended for consumption by log processing and SIEM software.

OPTIONS

-c FILE, --config=FILE
path to configuration file (default: unset)
-d, --dry-run
Only parse configuration and exit
-h, --help
Print short help text and exit
-v, --version
Print version and exit

DESCRIPTION

laurel is typically configured to be spawned by auditd(8) itself or by audispd(8) (for 2.x auditd versions). All audit events are fed to laurel via its standard input channel.

Sample configuration file /etc/audit/plugins.d/laurel.conf:

active = yes
direction = out
type = always
format = string
path = /usr/sbin/laurel
args = --config /etc/laurel/config.toml

An alternative setup consists of an AF_UNIX socket to which auditd(8) writes events. A connection is then established by laurel (see input setting below). In this case, the operator is responsible for starting and restarting laurel.

Example configuration file:

active = yes
direction = out
path = builtin_af_unix
type = builtin
args = 0600 /var/run/laurel.sock
format = string

CONFIGURATION

Configuration of laurel itself is done through a single configuration file in TOML format.

main section

This section contains basic operation parameters.

[auditlog] section

This section describes the main audit log file. laurel performs its own log file rotation, just like auditd(8).

[filterlog] section

This section describes the log file for filtered-out log events (see below). The file, size, generations, read-users, line-prefix configuration items work just like for the audit log.

[transform] section

[translate] section

Options that can be configured here correspond to what auditd(8) does when configured with log_format=ENRICHED.

[enrich] section

Options that can be configured here actually add information to events

[label-process] section

Labels can be attached to processes and are added to any event associated with those processes. These labels can be propagated from parent to child processes.

[filter] section

Filters make laurel drop entire events from the log file while still using them for internal processing such as process tracking.

SIGNALS

SIGHUP causes laurel to process any buffered input and restart. It can be used to reconfigure laurel without having restarting auditd(8) which would likely lead to lost audit messages.

AUTHORS